]> git.r.bdr.sh - rbdr/super-polarity/blobdiff - Super Polarity/SuperPolarity.cs
Implements polarity system
[rbdr/super-polarity] / Super Polarity / SuperPolarity.cs
index 40f147779419046afa82f9efe9ee23f226826168..b590079bf248f065530b48775c10083b6013c8c4 100644 (file)
@@ -17,16 +17,16 @@ namespace SuperPolarity
     /// </summary>
     public class SuperPolarity : Game
     {
-        GraphicsDeviceManager graphics;
+        public static GraphicsDeviceManager graphics;
         SpriteBatch spriteBatch;
 
-        MainShip player;
-
         public SuperPolarity()
             : base()
         {
-            graphics = new GraphicsDeviceManager(this);
+            SuperPolarity.graphics = new GraphicsDeviceManager(this);
+            SuperPolarity.graphics.PreferMultiSampling = true;
             Content.RootDirectory = "Content";
+            ActorFactory.SetGame(this);
         }
 
         /// <summary>
@@ -37,9 +37,13 @@ namespace SuperPolarity
         /// </summary>
         protected override void Initialize()
         {
-            player = new MainShip();
-
             base.Initialize();
+
+            InputController.RegisterEventForButton("changePolarity", Buttons.A);
+            InputController.RegisterEventForKey("changePolarity", Keys.Z);
+
+            InputController.RegisterEventForButton("shoot", Buttons.X);
+            InputController.RegisterEventForKey("shoot", Keys.X);
         }
 
         /// <summary>
@@ -53,7 +57,9 @@ namespace SuperPolarity
 
             Vector2 playerPosition = new Vector2(GraphicsDevice.Viewport.TitleSafeArea.X, GraphicsDevice.Viewport.TitleSafeArea.Y + GraphicsDevice.Viewport.TitleSafeArea.Height / 2);
 
-            player.Initialize(Content.Load<Texture2D>("Graphics\\player"), playerPosition);
+            ActorFactory.CreateShip(Ship.Polarity.Positive, new Vector2(200, 200));
+            ActorFactory.CreateShip(Ship.Polarity.Negative, new Vector2(400, 200));
+            ActorFactory.CreateMainShip(playerPosition);
         }
 
         /// <summary>
@@ -77,6 +83,9 @@ namespace SuperPolarity
 
             // TODO: Add your update logic here
 
+            InputController.UpdateInput();
+            ActorManager.Update(gameTime);
+
             base.Update(gameTime);
         }
 
@@ -86,11 +95,11 @@ namespace SuperPolarity
         /// <param name="gameTime">Provides a snapshot of timing values.</param>
         protected override void Draw(GameTime gameTime)
         {
-            GraphicsDevice.Clear(Color.CornflowerBlue);
+            GraphicsDevice.Clear(Color.White);
 
             spriteBatch.Begin();
 
-            player.Draw(spriteBatch);
+            ActorManager.Draw(spriteBatch);
 
             spriteBatch.End();